package com.ruoyi.agent.service.impl;

import java.util.List;

import com.ruoyi.agent.domain.Agent;
import com.ruoyi.agent.mapper.AgentMapper;
import com.ruoyi.agent.service.IAgentService;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * 门店代理人Service业务层处理
 *
 * @author ruoyi
 * @date 2022-05-24
 */
@Service
public class AgentServiceImpl implements IAgentService
{
    @Autowired
    private AgentMapper agentMapper;

    /**
     * 查询门店代理人
     *
     * @param id 门店代理人主键
     * @return 门店代理人
     */
    @Override
    public Agent selectAgentById(Long id)
    {
        return agentMapper.selectAgentById(id);
    }

    /**
     * 查询门店代理人列表
     *
     * @param agent 门店代理人
     * @return 门店代理人
     */
    @Override
    public List<Agent> selectAgentList(Agent agent)
    {
        return agentMapper.selectAgentList(agent);
    }

    /**
     * 新增门店代理人
     *
     * @param agent 门店代理人
     * @return 结果
     */
    @Override
    public int insertAgent(Agent agent)
    {
        agent.setCreateTime(DateUtils.getNowDate());
        return agentMapper.insertAgent(agent);
    }

    /**
     * 修改门店代理人
     *
     * @param agent 门店代理人
     * @return 结果
     */
    @Override
    public int updateAgent(Agent agent)
    {
        agent.setUpdateTime(DateUtils.getNowDate());
        return agentMapper.updateAgent(agent);
    }

    /**
     * 批量删除门店代理人
     *
     * @param ids 需要删除的门店代理人主键
     * @return 结果
     */
    @Override
    public int deleteAgentByIds(Long[] ids)
    {
        return agentMapper.deleteAgentByIds(ids);
    }


    /**
     * 批量逻辑删除门店代理人
     *
     * @param ids 需要删除的门店代理人主键
     * @return 结果
     */
    @Override
    public int logicDeleteAgent(Long[] ids,String delType,Long delUser)
    {
        return agentMapper.logicDeleteAgent(ids,delType,delUser);
    }

    /**
     * 删除门店代理人信息
     *
     * @param id 门店代理人主键
     * @return 结果
     */
    @Override
    public int deleteAgentById(Long id)
    {
        return agentMapper.deleteAgentById(id);
    }
}
